
import { createWriteStream } from 'fs';
import path from "path";

const ws = createWriteStream(path.resolve(import.meta.dirname, "2.txt"), {
  highWaterMark: 2, // 如果超过预期会返回false 
  emitClose: true,
  start: 0,
  flags: "w",
});

// 队列 （自己实现一个 事件队列 ）


let flag = ws.write('o', function () {
  console.log('ok1')
});
console.log(flag)
flag = ws.write('ok', function () {
  console.log('ok2')
});

console.log(flag);

ws.on('drain', function () {
  console.log('写完了')
  setTimeout(() => {
    ws.write('ok');
  }, 1000)
});

// ws.end(); // 如果已经结束了， 不会触发drain事件了

// write  on('drain')  end() == write + close



// 使用层面 可独流  on('data') on('end')
// 可写流  write()  end()